In general, encryption is a process by which data are encoded to enable only those with authorization to access the data. Unencrypted data, referred to as plaintext, can be encrypted using cipher, which is an encryption algorithm, in order to generate ciphertext, which must be decrypted before it can be read. Authorized recipients of the data are able to decrypt the data using a key, which can be provided by the holder of the data to the authorized recipients.
Database owners are adopting encryption solutions to protect their critical data. Encryption and the data security associated therewith become more important when a database is hosted in a cloud environment. Cloud hosted encrypted databases provide services such as, for example, database as a service (DBaaS), and analytics as a service (AaaS). With DBaaS, a data owner generates a database and sends its database to the service provider, which then maintains the database and provides query processing over the database. A service provider that provides AaaS provides analytics software and operations through web-delivered technologies so that businesses or other enterprises do not need to develop their own internal hardware setups to perform business analytics.
Association rules are conditional (e.g., if/then) statements used for determining relationships between data that may be present in a relational database or other type of information repository. A non-limiting example of an association rule is “If a consumer purchases bread, the consumer is 80% likely to also purchase butter”. As can be seen, an association rule includes an antecedent (e.g., if) and a consequent (e.g., then). Data mining for association rules (which can be referred to herein as “association rule mining”) may be used in connection with the analysis and prediction of customer behavior, and/or in connection with machine learning.
Association rules can be created based on data that include frequent antecedent/consequent (e.g., if/then) patterns and support and confidence values to identify noteworthy relationships. Support is an indication of the frequency of items in a database, and confidence corresponds to the number of times the conditional statements have been determined to be true.
Not all kinds of database services currently include encrypted databases. For example, while association rule mining from a database with plaintext data is known, association rule mining from an encrypted database has not been performed.